Conversation
|
Here's out the compiler output changed: Warnings Before
Warnings after
|
This allows SBCL to derive the type of the object's slots, which removes several warnings about dynamic dispatching of `aref` calls. + Mark capacity slot as a fixnum, as that's what it is being treated as throughout the code; although the right thing appeared to be occuring, the usage of the `the` operator conflicted with its `(unsigned-byte 32)` type, which is undefined behavior. + Hopefully do the same thing with the value of numbers in the `sequences` array.
c31a815 to
c0183b8
Compare
This allows SBCL to derive the type of the object's slots, which removes several warnings about dynamic dispatching of
arefcalls.theoperator conflicted with its(unsigned-byte 32)type, which is undefined behavior. At least on SBCL, it's now possible to remove the relatedthecalls and get the same behavior.sequencesarray.I looked at doing this for the SPSC queue, but I don't know how it would affect the cache thing that's going on.